import http from '@/axios/http'
import { json } from 'stream/consumers'

const logOperation = {
  // 分页查询所有日志信息
  selectAllT: (params: any) => {
    return http
      .post('/TLoginController/findAllTLogin', params)
      .then((res) => {
        if (res.code == 200) {
          return res
        } else {
          throw new Error(res.message || 'FIND failed')
        }
      })
      .catch((error) => {
        // 统一处理错误
        console.error('Error during FIND:', error)
        throw error // 继续抛出错误，让调用方可以捕获
      })
  },

  // 删除日志信息
  deletUser: (params: any) => {
    return http
      .delete('/TLoginController/deleteTLogin', params)
      .then((res) => {
        if (res.code == 200) {
          return res.data
        } else {
          // 登录失败，抛出错误以便外部catch捕获
          throw new Error(res.message || 'DELET failed')
        }
      })
      .catch((error) => {
        // 统一处理错误
        console.error('Error during DELET:', error)
        throw error
      })
  },
  //添加日志信息--登录信息
  addLog: (params: any) => {
    return http
      .post('/TLoginController/addlogininfo', params)
      .then((res) => {
        if (res.code == 200) {
          return res // 登录成功，返回数据
        } else {
          // 登录失败，抛出错误以便外部catch捕获
          throw new Error(res.message || 'Login failed')
        }
      })
      .catch((error) => {
        // 统一处理错误
        console.error('Error during login:', error)
        throw error // 继续抛出错误，让调用方可以捕获
      })
  },
    //添加日志信息--根据姓名查出该人的所有登录信息 将登出信息添加在集合的最后一个对象中
    findTLoginByLoginName: (params: any) => {
        return http
          .post('/TLoginController/findTLoginByLoginName', params)
          .then((res) => {
            if (res.code == 200) {
              return res // 登录成功，返回数据
            } else {
              // 登录失败，抛出错误以便外部catch捕获
              throw new Error(res.message || 'Login failed')
            }
          })
          .catch((error) => {
            // 统一处理错误
            console.error('Error during login:', error)
            throw error // 继续抛出错误，让调用方可以捕获
          })
      },
  // 根据用户姓名查询身份
  findTeacherRoleByTeacherName: (params: any) => {
    return http
      .post('/TeachersController/findTeacherRoleByTeacherName', params)
      .then((res) => {
        if (res.code == 200) {
          return res // 登录成功，返回数据
        } else {
          // 登录失败，抛出错误以便外部catch捕获
          throw new Error(res.message || 'Login failed')
        }
      })
      .catch((error) => {
        // 统一处理错误
        console.error('Error during login:', error)
        throw error // 继续抛出错误，让调用方可以捕获
      })
  },
  //根据手机号码查询用户的身份
  findTeacherRoleByTelephone: (params: any) => {
    return http
      .post('/TeachersController/findTeacherRoleByTelephone', params)
      .then((res) => {
        if (res.code == 200) {
          return res // 登录成功，返回数据
        } else {
          // 登录失败，抛出错误以便外部catch捕获
          throw new Error(res.message || 'Login failed')
        }
      })
      .catch((error) => {
        // 统一处理错误
        console.error('Error during login:', error)
        throw error // 继续抛出错误，让调用方可以捕获
      })
  },

  //根据手机号码查询用户的姓名
  findTeacherNameByTelephone: (params: any) => {
    return http
      .post('/TeachersController/findTeacherNameByTelephone', params)
      .then((res) => {
        if (res.code == 200) {
          return res // 登录成功，返回数据
        } else {
          // 登录失败，抛出错误以便外部catch捕获
          throw new Error(res.message || 'Login failed')
        }
      })
      .catch((error) => {
        // 统一处理错误
        console.error('Error during login:', error)
        throw error // 继续抛出错误，让调用方可以捕获
      })
  },

  //用户登录进入页面修改个人资料中的用户名时 需要修改登录信息中的用户名
  updateTLogin: (params: any) => {
    return http
      .get('/TLoginController/updateTLogin', params)
      .then((res) => {
        if (res.code == 200) {
          return res // 登录成功，返回数据
        } else {
          // 登录失败，抛出错误以便外部catch捕获
          throw new Error(res.message || 'Login failed')
        }
      })
      .catch((error) => {
        // 统一处理错误
        console.error('Error during login:', error)
        throw error // 继续抛出错误，让调用方可以捕获
      })
  },
}

export default logOperation
